#include <iostream>
#include <stdio.h>
#include <stdlib.h>

//当你在子函数中要修改主函数中的值即可用
void modify_num(int &b) {
    b += 1;
}

void modify_pointer(int *&p, int *&q) {
    p = q;
}

void func(char *&p) {
    p = (char *) malloc(100);
    fgets(p, 100, stdin);
}

//c++引用的讲解
//在子函数中修改主函数中的普通变量的值
int main() {
//    int a = 10;
//    modify_num(a);
//    printf("%d",a);
//    int *p = NULL;
//    int i = 10;
//    int *q = &i;
//    modify_pointer(p, q);
//    printf("%d", *p);
    char *p;
    func(p);
    printf("%s",p);

    return 0;
}
